iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 4
3
Software Development

SQL 30天手把手入門系列 第 4

Day 4 關聯式資料庫簡介 - Schema 和 標準 SQL 語法

  • 分享至 

  • xImage
  •  

什麼是 Schema?

Schema 這個詞目前沒有看見統一的中文說法,它是用來描述資料庫內中的表格結構、欄位格式以及記載每個表格中的關聯。當你日後要寫入的資料不符合 Schema 的規範時,那就會出現錯誤。

補充:關於欄位的命名,建議使用小寫字母、並使用 "_" 來進行連結,以增加多作業系統平台開發時的相容性。

「建立資料庫→建立資料表→定義資料庫結構」,此為要開始實際使用一個新資料庫的前置步驟。

  • 建立資料庫如同先規劃出一個空間
  • 建立資料表如同在裡頭劃出各個區塊
  • 定義資料庫結構如同建立規範:怎樣類型的東西要被放置到哪個區塊

標準 SQL 語法

ISO 國際標準化組織會每隔數年對標準化 SQL 的規格進行修訂,迄今為止最新的一版為 SQL:2016。不過可以想見的是,在規範尚未成熟的年代,若全部 SQL 的流派都僅支援標準 SQL,想必是無法滿足各種實務上的需要。因此,各家多少都有針對自家產品所遇見的情境,而設計的專門語法。

時至今日,標準規範的 SQL 多已被各流派支援,且功能也完整許多。因此,可以先熟悉標準 SQL 的撰寫方式。

SQL 敘述 (SQL Statement)

SQL 的敘述是以 "關鍵字" 並搭配「資料庫」或是「欄位」名稱來存取資料庫的內容。其句型概略如下:

SELECT country WHERE name = 'USA';

在命名欄位名稱時,請儘量避開保留的關鍵字,以免造成日後維護上的麻煩。

SQL 敘述分類

DDL(Data Definition Language)

資料定義語言,用來建立、刪除、修改資料庫或是資料表的結構、欄位、名稱...等有關資料庫結構的東西

  • CREATE: 建立資料庫 / 資料表 物件
  • ALTER:修改資料庫 / 資料表物件
  • DROP:刪除資料庫 / 資料表物件

DML(Data Manipulation Language)

實務上 90% 以上的資料庫操作指令,都是屬於這一塊,主要可以分為:

  • SELECT:查詢資料表
  • INSERT:將記錄輸入到資料表中
  • UPDATE:修改既有資料表中的資料
  • DELETE:刪除資料表中的資料

DCL(Data Control Language)

這部份的指令是用來設定使用者對於資料庫的操作權限,以及是否認可資料庫的操作,進而達成版本控制

  • COMMIT:認可對資料庫執行的變更
  • ROLLBACK:取消對資料庫的執行變更,回歸到先前版本
  • GRANT:授權使用者操作權限
  • REVOKE:取消使用者操作權限

Reference

  1. What is a database schema?
  2. MySQL 大小寫敏感問題
  3. SQL Resrrved Words

上一篇
Day 3 關聯式資料庫簡介 - 常用專有名詞和關聯
下一篇
Day5 - SQL 敘述的撰寫注意事項
系列文
SQL 30天手把手入門30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言